package br.com.lh.urabuilder.business
{
	import br.com.lh.urabuilder.view.ActionComponent;
	import br.com.lh.urabuilder.view.arrow.ArrowContainer;
	
	import flash.geom.Point;
	
	/**
	 * This interface provides methods for 
	 * manipulating the arrows that connect two ActionComponents.
	 * 
	 * @author Luiz Henrique
	 * 
	 */
	public interface ArrowManager extends INewUraResponder
	{
		function insertArrow(startPoint:Point,endPoint:Point,arrowText:String= ""):ArrowContainer;
		function bindStartComponent(arrowContainer:ArrowContainer,startComponent:ActionComponent):void;
		function bindEndComponent(arrowContainer:ArrowContainer,endComponent:ActionComponent):void;
		function removeArrow(arrowContainer:ArrowContainer):void;
		function get arrowCount():int;
		function insertBoudedArrow(startComponent:ActionComponent,endComponent:ActionComponent,arrowText:String = ""):ArrowContainer;
	}
}